home *** CD-ROM | disk | FTP | other *** search
/ Experimental BBS Explossion 3 / Experimental BBS Explossion III.iso / msdos / aset10.zip / README.TXT < prev   
Text File  |  1993-05-06  |  30KB  |  674 lines

  1.  
  2.  
  3.         ######  #     # #######   ###   #        #####          #
  4.         #     # #     #    #       #    #       #     #         #    #
  5.         #     # #     #    #       #    #       #               #    #
  6.         ######  #     #    #       #    #        #####          #    #
  7.         #   #   #     #    #       #    #             #         #######
  8.         #    #  #     #    #       #    #       #     #              #
  9.         #     #  #####     #      ###   #######  #####               #
  10.  
  11.                       (freeware)
  12.  
  13.  
  14.             Contents
  15.             --------
  16.             1  Introduction
  17.                         2  Legal stuff
  18.             3  What is available?
  19.             4  Technical notes
  20.             5  The user interface
  21.             6  Source code availability
  22.             7  Credits
  23.             8  Revision history
  24.             9  How to contact me
  25.  
  26.  
  27. 1  Introduction
  28. ---------------
  29. This software is a part of version 4 of Rickis little useful (?) DOS utilities.
  30. After version 3 I decided to split them up and distribute the stuff in smaller
  31. packages (mainly because the file became too big). If you have comments or
  32. suggestions, please contact me. You find my address at the end of this
  33. document.
  34.  
  35. All programs were programmed with Turbo Pascal 6.0 on a 286 AT compatible
  36. machine using Norbert Juffas TURBO.TPL replacement, version TPL60N19. Each of
  37. them is tested to a reasonable level of stability (I use them myself :-) ). If
  38. you have problems, please contact me. I suppose you need at least DOS 3.x to
  39. run everything successfully. RUTILS ran without problems on the following
  40. platforms:
  41.  
  42.                 Original IBM AT 286, MS-DOS 3.3
  43.                 AT 286-20 NEAT, AMI Bios, MS-DOS 3.3
  44.                 AT 286-20 NEAT, AMI Bios, MS-DOS 5.0
  45.                 AT 286-20 NEAT, AMI Bios, DR-DOS 6.0
  46.                 AT 386 NEAT, AMI Bios (10/89), MS-DOS 5.0
  47.                 AT 486, AMI Bios, MS-DOS 5.0
  48.  
  49. After RUTILS3 was out, several people kindly reported some bugs to me. There
  50. were some which could be fixed immediately. One bug, however, was a bit harder
  51. to find. Some debug sessions later I found that DR-DOS and MS-DOS are not as
  52. compatible as they should be. This version has been tested with both MS-DOS and
  53. DR-DOS. None of my TSRs caused any problems.
  54.  
  55. On PCs with a 80486 chip, it may happen that one of the programs crashes. This
  56. has nothing to do with my software (at least I hope so :-)). The effect is that
  57. the PC hangs and must be rebooted. If you start the program in a Windows DOS
  58. box, a weird error message is displayed and the computer must be rebooted. If
  59. you use the DOS DEBUG command to start the program, everything runs fine. What
  60. makes me think that the problem has nothing to do with my software is the fact
  61. that (a) I can fix the bug by simply adding some few bytes to the executable
  62. (eg. by placing some additional spaces in a help screen) and (b) it occured
  63. that a program crashed if it had been DIETed, and ran without being compressed
  64. and for another program this behaviour could be observed in the opposite way.
  65. If anyone has more information about that strange matter, please contact me.
  66.  
  67. The RUTILS package is intended for people who already have the basic knowledge
  68. about DOS. You should know how to view and modify text files (if you read this,
  69. you appearently know how to view them :-) ), how to redirect a programs output
  70. to a file (and how to append it to the target file) and how to use the pipe
  71. symbol '|'. I did not include a complete introduction to DOS in every DOC file.
  72. For DCAT you must know how to put labels on diskettes, for ASET you must know
  73. what shell variables are (and how to view and modify them), GENOUT will only be
  74. useful if you program in a shell or in a programming language, and CHMOD
  75. requires some knowledge about file attributes.
  76.  
  77. All the programs are a result of my hobby, not my profession.
  78.  
  79.  
  80. 2  Legal stuff
  81. --------------
  82. You are free to use this software if it is not modified in any way and if you
  83. give it away for free. You may only charge a minimal fee to cover distribution
  84. or diskette costs. The author disclaims all warranties as to this software,
  85. whether express or implied, including without limitation any implied warranties
  86. of merchantability, fitness for a particular purpose, functionality or data
  87. integrity or protection. Phew.
  88.  
  89. For magazines, software distributors, sysops, ftp site administrators...
  90. ------------------------------------------------------------------------
  91. If you spread the RUTILS4 software by placing it on a ftp site for public
  92. access, or putting it on a diskette for a computer magazine, or making it
  93. available in any other way for a large user group, you *must* inform me by
  94. email (preferred) or mail. This will allow me to inform you if any substantial
  95. modifications have been made since you got the package, and let me have an
  96. overview on how the software has been spread. You don't have to register. You
  97. don't have to pay. You only have to tell me.
  98.  
  99.  
  100. 3  What is available?
  101. ---------------------
  102. The following table gives an overview over what's available and into which
  103. categories it falls. Some of the programs are marked with (unix) to show that
  104. they are (at least) similar to Unix commands.
  105.  
  106. +-----------------------------------------------------------------------------+
  107. |                  Text file utilities                  |
  108. +---+---------+---------------------------------------------------------------+
  109. | 1 | CUT     | Remove selected fields from each line of a file (unix)        |
  110. | 1 | DETAB   | Change tabs to spaces in several files (unix: expand)         |
  111. | 1 | ENTAB   | Change spaces to tabs in several files (unix: unexpand)       |
  112. | 1 | FMT     | ASCII text formatter (unix)                                   |
  113. | 1 | HEAD    | Show the first lines of a file (unix)                         |
  114. | 1 | LOCASE  | Change chars in several files from upper to lower case        |
  115. | 1 | MCOL    | Arrange text in multiple columns                              |
  116. | 1 | NODUP   | Remove successive equal lines from files                      |
  117. | 1 | TAIL    | Show the last lines of a file (unix)                          |
  118. | 1 | UPCASE  | Change chars in several files from lower to upper case        |
  119. | 1 | WC      | Count words, lines, and chars of several text files (unix)    |
  120. +---+---------+---------------------------------------------------------------+
  121. |               Arbitrary file utilities                  |
  122. +---+---------+---------------------------------------------------------------+
  123. | 2 | CAT     | Append several outputs to stdout (unix)                    |
  124. | 3 | FILE    | File type guesser (unix)                                    |
  125. | 2 | HD      | Display hex dumps of several files                               |
  126. | 2 | STRINGS | Find printable strings in an object file or binary (unix)     |
  127. | 2 | TEE     | Duplicate textual output to a file (unix)                   |
  128. +---+---------+---------------------------------------------------------------+
  129. |                     Directory utilities                  |
  130. +---+---------+---------------------------------------------------------------+
  131. | 4 | L       | Display information about files and directories                |
  132. +---+---------+---------------------------------------------------------------+
  133. |                    Programming utilities                  |
  134. +---+---------+---------------------------------------------------------------+
  135. | 5 | GENOUT  | Generate program fragments for textual output                 |
  136. +---+---------+---------------------------------------------------------------+
  137. |                           Batch file utilities                              |
  138. +---+---------+---------------------------------------------------------------+
  139. | 6 | ASET    | Enhanced SET command                                          |
  140. +---+---------+---------------------------------------------------------------+
  141. |                   Miscellanous utilities                  |
  142. +---+---------+---------------------------------------------------------------+
  143. | 5 | BANNER  | Display strings in huge letters (unix)                        |
  144. | 5 | CAL     | Display a calendar (unix)                                     |
  145. | 5 | CHMOD   | Change the attributes of files (unix)                         |
  146. | 7 | DCAT    | Disk Cataloger                                                |
  147. | 5 | DCALC   | Date Calculations                                             |
  148. | 5 | NCONV   | Number conversion utility                                     |
  149. +-----------------------------------------------------------------------------+
  150.  
  151. The number in the above table stands for the following ZIP files, which can be
  152. found at wsmr-simtel20.army.mil (192.88.110.20) in the directories listed
  153. below --- At least I plan to place them there. Please check out simtels upload
  154. lists for the current state.
  155.  
  156.                    +---+--------------+---------------+
  157.                    | 1 | rtextu10.zip | msdos/txtutl  |
  158.                    | 2 | rfileu10.zip | msdos/filutl  |
  159.                    | 3 | file10.zip   | msdos/filutl  |
  160.                    | 4 | l11.zip      | msdos/dirutl  |
  161.                    | 5 | rpgmu10.zip  | msdos/pgmutl  |
  162.                    | 6 | aset10.zip   | msdos/batutl  |
  163.                    | 7 | dcat10.zip   | msdos/catalog |
  164.                    +---+--------------+---------------+
  165.  
  166. Each program comes with an uncompressed EXE file and a DOC file which contains
  167. additional information. ASET comes with an additional Quick Reference. Each of
  168. the above ZIP files contains a copy of this README file and a file DESC.BTM,
  169. which is a 4DOS batch file DESCRIBEing the files contained in the ZIP file,
  170. as well as a FILE_ID.DIZ description file.
  171.  
  172. Everything as one package can be ftp'd from ftp.informatik.rwth-aachen.de
  173. (137.226.112.31) as pub/rutils40.zip. The EXE files in this compilation are
  174. compressed with Teddy Matsumotos DIET compressor (see below).
  175.  
  176.  
  177. 4  Technical notes
  178. ------------------
  179. I recommend you get the DIET144 package by Teddy Matsumoto to decrease the size
  180. of the EXE files. RUTILS30 had been shipped with packed EXE files, but Keith
  181. Peterson pointed out that this causes problems with virus checking. After you
  182. checked all EXE files with all your favorite virus checkers, I recommend you
  183. execute a DIET *.EXE command to pack them. I know that there are smaller
  184. utilities than mine. They are usually written in C or Assembler, not in Turbo
  185. Pascal. I do not plan to re-write the utilities in a different language. If my
  186. stuff is too big for you, don't use it :-)
  187.  
  188. The following table gives an overview over the programs facilities.
  189.  
  190. +----------+---------+------+-----+----------+-----------+-----+--------------+
  191. | Name     | Default | Help | Dbg | Verbose  | No Action | Rec | Special      |
  192. +----------+---------+------+-----+----------+-----------+-----+--------------+
  193. | ASET     | -h      | -hHv | -*  | -pr      | -n        |     | -ef          |
  194. | BANNER   | -h      | -hHv | -*  |          |           |     |              |
  195. | CAL      | current | -hHv | -*  |          |           | -R  |              |
  196. |          | month   |      |     |          |           |     |              |
  197. | CAT      | -h      | -hHv | -*  |          |           |     | -bcCenst     |
  198. | CHMOD    | current | -hHv | -*  |          | -n        | -R  | -cdDf        |
  199. |          | dir     |      |     |          |           |     |              |
  200. | CUT      | -h      | -hHv | -*  |          |           |     | -cdfis       |
  201. | DCALC    | -h      | -hHv | -*  |          |           |     |              |
  202. | DCAT     | -h      | -hHv | -*  | -aq      |           |     | -cfn         |
  203. | DETAB    | -h      | -hHv | -*  |          |           |     | -ert         |
  204. | ENTAB    | -h      | -hHv | -*  |          |           |     | -ert         |
  205. | FILE     | -h      | -hHv | -*  | -0123ang |           | -R  | -mo          |
  206. | FMT      | -h      | -hHv | -*  |          |           |     | -#BcCfLnpRs  |
  207. | GENOUT   | -h      | -hHv | -*  |          |           |     | -bBcCdDeEfF  |
  208. |          |         |      |     |          |           |     |  mMpPsS      |
  209. | HD       | -h      | -hHv | -*  | -q       |           |     | -lnotx       |
  210. | HEAD     | -h      | -hHv | -*  | -q       |           |     | -#           |
  211. | L        | current | -hHv |     | -afVx    |           | -R  | -12458densu  |
  212. |          | dir     |      |     |          |           |     |  kKmpr       |
  213. | LOCASE   | -h      | -hHv | -*  |          |           |     | -ber         |
  214. | MCOL     | -h      | -hHv | -*  |          |           |     | -cflst       |
  215. | NCONV    | -h      | -hHv | -*  | -a       |           |     |              |
  216. | NODUP    | -h      | -hHv | -*  |          |           |     | -bei         |
  217. | STRINGS  | -h      | -hHv | -*  | -o       |           |     | -#antx       |
  218. | TAIL     | -h      | -hHv | -*  | -q       |           |     | -#           |
  219. | TEE      | -h      | -hHv | -*  |          |           |     | -acC         |
  220. | UPCASE   | -h      | -hHv | -*  |          |           |     | -ber         |
  221. | WC       | -h      | -hHv | -*  |          |           |     | -clmnuwx     |
  222. +----------+---------+------+-----+----------+-----------+-----+--------------+
  223.  
  224. Explanation:
  225.   Name            The name of the program
  226.   Default         The action of the program after invokation w/o arguments
  227.   Help            Switches which provide usage and other information
  228.   Dbg             Debug option which displays some internal runtime details
  229.   Verbose         Switches which control the programs verbosity
  230.   No Action       If specified, these options switch to don't-modify mode
  231.   Rec             Make the program operate for all subdirectories, too
  232.   Special         These switches perform program dependent functions
  233.  
  234.  
  235. 5  The user interface
  236. ---------------------
  237. I tried to design a unique user interface for all my utilities. Its features
  238. are listed below.
  239.  
  240.  * First of all: NEVER try to do something like <prog> TEXT.DAT > TEXT.DAT ie.,
  241.    never try to redirect output to the input file. This results in loss of your
  242.    data file. Instead, rename your input or output file before applying the
  243.    command, like
  244.  
  245.            REN TEXT.DAT TMP.TMP
  246.            <prog> TMP.TMP > TEXT.DAT
  247.            DEL TMP.TMP
  248.  
  249.    That has nothing to do with my programs, but I think, it should be said.
  250.  
  251.  * You may rename any of the programs to whatever name you wish. The help pages
  252.    will recognize the change and update automatically. For bug reports please
  253.    tell me the 'design name', which is shown in the -v screen, if it differs
  254.    from your choice (otherwise I probably don't know what you're talking
  255.    about).
  256.  
  257.  * Valid switch characters are '-' and '/'.
  258.  
  259.  * A filename '-' stands for input from stdin. This is true for those utilities
  260.    where input from standard input is meaningful. If you use them as pipes, as
  261.    eg. in
  262.  
  263.            VER | GENOUT -
  264.  
  265.    you may omit the filename argument and simply write
  266.  
  267.        VER | GENOUT
  268.  
  269.  * If you invoke one of the filters like
  270.  
  271.            LOCASE - -
  272.  
  273.    you must input from the keyboard _two_ times, terminating each input with
  274.    CTRL/Z. If you combine this with piping, like
  275.  
  276.            DIR | LOCASE - -
  277.  
  278.    the first - means the input from the pipe (here DIRs output), and the second
  279.    - means input from the keyboard, terminated with CTRL/Z, as above.
  280.  
  281.  * Calling any of the programs without arguments will show a help page, if
  282.    there is no meaningful application for such an invokation.
  283.  
  284.  * The switch characters are case sensitive, ie. -h and -H are two different
  285.    switches!
  286.  
  287.  * Switches may be specified separately, like -a -b -c, or in one turn, like
  288.    -abc. If switches have arguments, like -b100, they may only appear at the
  289.    end of (optionally tied-together) switches, ie. -ab100 is the same as -a
  290.    -b100, whereas -b100a results in 100a as argument to -b. Switches with
  291.    arguments appear in the help pages with a trailing :
  292.  
  293.    In ASET combined options are not allowed, ie. you must specify them one by
  294.    one, like -a -b -c, not in one turn.
  295.  
  296.  * The Errorlevel is set due to the following reasons: 0, if everything worked
  297.    fine. 1, if an information screen had been displayed. 255, if a fatal error
  298.    occured. Other settings depend on the tools functionality and are documented
  299.    in the -H screens. This helps building batch files with the programs (IF
  300.    ERRORLEVEL 255 GOTO... and so on).
  301.  
  302.  * The commandline may contain quoted strings. Quoting characters are ' and ",
  303.    respectively. The following command line
  304.  
  305.            BANNER 'a"a' "b'b"
  306.  
  307.    contains 2 arguments, because " will be part of the string in the first '
  308.    pair and vice versa. The ! character may be used to unquote ', ", and !
  309.    itself. Separators are space and tab characters. Quoted strings without
  310.    separators in between are concatenated. Therefore
  311.  
  312.            BANNER !'a"a' "b'b"
  313.  
  314.    has one argument, namely the string >'aa' bb"<. Think about this. Quoting
  315.    may also be used to specify empty strings '', or "". Missing quotes at the
  316.    end of the line are filled up appropriately. If you doubt whether one of the
  317.    programs reads your input correctly, call it with the -* option. It will
  318.    tell you exactly which options and parameters have been recognized.
  319.  
  320.    The above does not apply to ASET, which has its own command line parser.
  321.  
  322.    One note for 4DOS users: 4DOS interprets quotes in the command line itself.
  323.    You must therefore use `'` and `"` to pass the quotes ' and " to programs.
  324.  
  325.  * The meta character ! may also be used to pass any ASCII code to the
  326.    programs. If you want to pass, eg., a <CR> character to one of them, simply
  327.    enter its (decimal) code after the ! character:
  328.  
  329.            <prog> !13
  330.  
  331.    Note that !n cannot be used within quotes, but you may use something like
  332.  
  333.            <prog> "Let's pass"!13!10"cr/lf to <prog>"
  334.  
  335.    If the number after ! exceeds 255, it is interpreted to be more than one
  336.    character (up to 4 characters can be formed this way). We do not recommend
  337.    the usage of this feature, however.
  338.  
  339.    The above does not apply to ASET, which has its own command line parser.
  340.  
  341.  * If not stated otherwise, the order of arguments and switches is arbitrary.
  342.    Parameter of switches, like -b100 must be appended without blanks
  343.    (otherwise they are interpreted as names).
  344.  
  345.  * Each of the programs, which accepts a list of file names as arguments, does
  346.    also accept the name of a list file. A list file is by general agreement a
  347.    file which contains a list of names of other files which are to processed.
  348.    Its name is passed with a leading '@' to tell its special status, eg.
  349.  
  350.            CAT @FILES.LST
  351.  
  352.    FILES.LST is expected to contain a list of file names, separated by white
  353.    space, ie. SPACEs or NEWLINEs, eg.
  354.  
  355.            FOO.DAT
  356.            PROG.PAS
  357.            WILLI.C WILLI.H
  358.  
  359.    It may even contain the names of other list files (which must start with '@'
  360.    again). The latter feature is to be used carefully, though, because you are
  361.    likely to lose control over what happens, if too many list files are
  362.    involved. The processing of nested list files is as if they were inserted.
  363.    Recursion is not allowed!
  364.  
  365.    You may of course mix file names, wildcards, and list file names in the
  366.    command line, like
  367.  
  368.            CAT 1.DAT @1.LST 2.* @2.LST
  369.  
  370.    You may however NOT use wildcards as list file names, like @*.LST!
  371.  
  372.  * Currently my utilities cannot process files whose name begins with - (unless
  373.    they are part of a wildcard like *.*), because they are interpreted as
  374.    options. You must either use a wildcard or rename them first.
  375.  
  376.  
  377. 6  Source code availability
  378. ---------------------------
  379. I will not give away the sources of this software. If you want to program in
  380. TP, I point you to Timo Salmis collection of TP goodies (no source code, only
  381. TPUs) and David R. Conrads DRCPAS10 package (source code) - see credits.
  382.  
  383.  
  384. 7  Credits
  385. ----------
  386. I would like to thank the following people for their support:
  387.  
  388.  * My wife Marita Breuer for testing the programs
  389.  * Jouni Miettunen (jon@stekt.oulu.fi) for a lot of suggestions, critics, and
  390.    discussions. I couldn't mention everything we talked about...
  391.  * Edwin Schwartz (Niederzissener Strasse 12, 5479 Wehr) for his extremely
  392.    helpful comments concerning the '- -' bug
  393.  * Jari Kokko (jkokko@snakemail.hut.fi) for his comments. He had the idea of a
  394.    simple command line oriented Disk Cataloger like DCAT
  395.  * Prof. Timo Salmi (ts@uwasa.fi) of the University of Vaasa, Finland for
  396.    making available useful tools to all of us. I also wish to thank him for his
  397.    willingness to discuss problems concerning them. His TPUs can be anonymously
  398.    ftp'ed from garbo.uwasa.fi (128.214.87.1) as /pc/ts/tspaXXYY.zip, where
  399.    XX=version, YY=40,50,55,60
  400.  * Norbert Juffa for his great TURBO.TPL replacement
  401.  * All the people who contacted me to report bugs
  402.  * David R. Conrad for his DRCPAS10 package - I use several of his procedures.
  403.    You get the package via ftp from wsmr-simtel20.army.mil (192.88.110.20) in
  404.    the directory msdos/turbopas
  405.  * O. Wehrheim for his dBaseTB unit from Software Journal 06/87
  406.  * Teddy Matsumoto for his excellent freeware DIET program
  407.  * AC/DC, Metallica, Flotsam & Jetsam, and Slayer for their tunes :-)
  408.  
  409.  
  410. 8  Revision history
  411. -------------------
  412.  +-------------------------------------------+
  413.  | Version 3.1 --> 4.0 (released 05/01/1993) |
  414.  +-------------------------------------------+
  415.    General (for all programs)
  416.    --------------------------
  417.    * New utilities DCALC, DCAT, L, TAIL
  418.    * Rewrote the basic layer; it's now faster and a bit smaller. Due to this
  419.      major revision I renamed the programs to <prog>/2. The revision numbering
  420.      starts with 1.0 again. <prog> -v reveals that the programs belong to
  421.      RUTILS40
  422.    * Increased my documentation efforts. Not much, but it grows...
  423.    * Added a new feature to the command line parser: !<num> may be used to pass
  424.      arbitrary characters to the programs, eg. CR=!13
  425.    * Dropped the support of text files with LF-only separated lines (Unix
  426.      format) in order to speed up most of the programs significantly
  427.    * Fixed the '- -' bug which caused 'PROG - -' to terminate after reading
  428.      the first input, and 'DIR | PROG - -' to terminate without reading from
  429.      standard input. Thanks to Edwin Schwartz for his suggestions
  430.    * Dropped the support of comments in the command line, because the problems
  431.      were bigger than the benefits
  432.    * The help pages are formatted \raggedright again (I changed my mind)
  433.    * Modified the output of the debugging mode -*; added some more info
  434.  
  435.    ASET
  436.    ----
  437.    * Huge enhancements, including an infix expression parser for parenthesed
  438.      expressions of arbitrary complexity, several new functions, a powerful -e
  439.      option (the old -e option is renamed to -p!) which lets ASET modify the
  440.      DOS ERRORLEVEL (great for batch files!), the ability to load assignment
  441.      sequences from a file, which can ease software configuration, and a new -n
  442.      option which makes ASET run in 'compute only, do not SET' mode, which lets
  443.      you use ASET as a kind of desktop calculator
  444.  
  445.    BANNER
  446.    ------
  447.    * New option -C makes BANNER center the output
  448.  
  449.    CAL
  450.    ---
  451.    * CAL knows about the Gregorian Reformation, which removed 11 days from 3
  452.      Sep 1752 to 13 Sep 1752 (in America). CAL prints calenders for a complete
  453.      year in three colums for Unix compatibility (thanks to Pingnan Yuan
  454.      (yuan@geog.utoronto.ca) for pointing this out)
  455.  
  456.    CAT
  457.    ---
  458.    * CAT now operates for binary files, too; it starts in binary mode by
  459.      default (ie., CAT fileA > fileB produces exact copies). Thanks to Jari
  460.      Kokko (jkokko@snakemail.hut.fi) for his suggestions.
  461.  
  462.    CHMOD
  463.    -----
  464.    * changed the % switch to ~ due to problems with shell variables (thanks to
  465.      Jouni Miettunen (jon@stekt.oulu.fi) for bringing this to my attention)
  466.    * supports directories with the new switches -d and -D now
  467.    * increased security by introcducing the new -f switch which must be set for
  468.      system files
  469.  
  470.    CUT
  471.    ---
  472.    * Bugfix in CUT: sometimes a range error was raised
  473.  
  474.    FILEINFO --> FILE
  475.    -----------------
  476.    * FILEINFO is replaced by a new utility FILE, which works similar to the
  477.      Unix command with the same name. A magic file is shipped with FILE.
  478.      FILEINFO is no longer supported
  479.  
  480.    FMT
  481.    ---
  482.    * FMT inserts spaces (in blockset mode) deterministically now, ie.
  483.      successive calls of FMT produce the same result
  484.  
  485.    GENOUT
  486.    ------
  487.    * Bugfix: BAT output did not work
  488.    * Added 4DOS support (the ECHO format is different from DOS)
  489.  
  490.    HEAD
  491.    ----
  492.    * New option -q makes HEAD operate quietly
  493.  
  494.    NC --> NCONV
  495.    ------------
  496.    * I renamed this program because its name collided with Norton Commander, I
  497.      encourage you to rename it to a SHORT name (I use NC as before)
  498.  
  499.    STRINGS
  500.    -------
  501.    * Bugfix: readable strings with a length of 255 characters were preceded by
  502.      one non-printing character
  503.    * New option -o can produce binary, decimal, octal, and hex offsets now
  504.  
  505.    TEE
  506.    ---
  507.    * TEE works for binary files now
  508.  
  509.    WC
  510.    --
  511.    * WC -u is default rather than WC -n
  512.  
  513.  +-------------------------------------------+
  514.  | Version 3.0 --> 3.1 (released 01/05/1993) |
  515.  +-------------------------------------------+
  516.    General (for all programs)
  517.    --------------------------
  518.    * New utility MCOL
  519.    * Bugfix: the handling of directory name parameters failed for paths like
  520.      C:\ (thanks to Timo Salmi for pointing this out)
  521.    * Some internal bugfixes
  522.    * FMTs blockset facility is internally used to format the help pages
  523.  
  524.    ASET
  525.    ----
  526.    * ASET reports missing environment space now
  527.  
  528.    BANNER
  529.    ------
  530.    * New options -s and -S invoke slanted and backslanted mode
  531.    * Bugfix in BANNER: Z and Y were swapped
  532.  
  533.    HEAD
  534.    ----
  535.    * HEAD reports ==> (stdin) <== correctly
  536.  
  537.    FMT
  538.    ---
  539.    * FMT simplifies ranges of whitespace before formatting a line (which
  540.      produces nicer results), unless -p is specified
  541.  
  542.    WC
  543.    --
  544.    * New option -m determines the length of the longest line
  545.  
  546.  +------------------------------------------------+
  547.  | Version 3.0 beta --> 3.0 (released 08/05/1992) |
  548.  +------------------------------------------------+
  549.    General (for all programs)
  550.    --------------------------
  551.    * New utilities CAL, CUT, and FMT
  552.  
  553.    ASET
  554.    ----
  555.    * New opcodes BOOTDRIVE, BUFFERS, and FILES for ASET
  556.  
  557.    CAT
  558.    ---
  559.    * Bugfix: supress mode was sometimes on w/o option -s
  560.  
  561.    DETAB/ENTAB
  562.    -----------
  563.    * New options -l and -r for leading tabs and quotes
  564.  
  565.    HD
  566.    --
  567.    * HD -l defaults to HD -l20 (one page)
  568.  
  569.    LOCASE/UPCASE
  570.    -------------
  571.    * New option -r for quotes
  572.  
  573.    NODUP
  574.    -----
  575.    * Removed option -w for NODUP again, because there was no meaningful way to
  576.      decide whether to apply it before or after the position calculation
  577.  
  578.    PICINFO --> FILEINFO
  579.    --------------------
  580.    * Replaced PICINFO by the more generic FILEINFO. PICINFO is no longer
  581.      supported
  582.  
  583.    TEE
  584.    ---
  585.    * Bugfix: it sometimes didn't accept input filenames
  586.  
  587.  
  588.  +------------------------------------------------+
  589.  | Version 2.0 --> 3.0 beta (released 07/03/1992) |
  590.  +------------------------------------------------+
  591.    General (for all programs)
  592.    --------------------------
  593.    * New utilities ASET, WC, BANNER, CHMOD, HEAD, GENOUT, STRINGS
  594.    * Usage of a read buffer for input from files speeds up most of the
  595.      utilities significantly
  596.    * All utilities recognize CR/LF separated text files as well as LF-only
  597.      separated text files
  598.    * All programs display a help screen, if called without arguments
  599.    * New commandline parser
  600.    * New option -u for several programs generates unix-like output
  601.    * New option -* for all programs generate debugging information
  602.    * several bug fixes
  603.  
  604.    CAT
  605.    ---
  606.    * New options -b, -e, -n, -s, -t for CAT make it behave (nearly) like unix
  607.      cat
  608.  
  609.    HD
  610.    --
  611.    * New option -o allows starting offset specification
  612.  
  613.    NODUP
  614.    -----
  615.    * New option -w allows whitespace exclusion
  616.  
  617.    PICINFO/WC
  618.    ----------
  619.    * PICINFO recognizes TIFF MM and PIC now
  620.    * new dirname facility for WC and PICINFO
  621.  
  622.  +-------------------------------------------+
  623.  | Version 1.0 --> 2.0 (released 04/28/1992) |
  624.  +-------------------------------------------+
  625.    General (for all programs)
  626.    --------------------------
  627.    * New utilities HD, TEE, NC, and CAT
  628.    * Bug fix: wildcards now work on other directories also
  629.  
  630.  +-----------------------------------+
  631.  | Version 1.0 (released 04/14/1992) |
  632.  +-----------------------------------+
  633.    * Initial version
  634.  
  635.  
  636. 9  How to contact me
  637. --------------------
  638. Mail:   Richard Breuer
  639.         Brunssumstrasse 6                       
  640.         5100 Aachen
  641.         (after Jul 1, 1993: 52074 Aachen)
  642.         Germany                                 
  643.         Europe                                  
  644.  
  645. or:     Richard Breuer
  646.         ComConsult GmbH
  647.         Pascalstr. 25
  648.         5100 Aachen
  649.         (after Jul 1, 1993: 52076 Aachen)
  650.         Germany
  651.         Europe
  652.  
  653. Phone:  +49 241 85605     private
  654.         +49 2408 149 01   job
  655.         +49 2408 149 149  fax
  656.  
  657. Email:  ricki@pool.informatik.rwth-aachen.de (Preferred!)
  658.  
  659.  
  660. Please note that my private address will change sometime in 1993. I will keep
  661. my e-mail address some time longer. If your e-mail fails, try
  662.  
  663.         marita@rwthi3.informatik.rwth-aachen.de
  664.  
  665. instead.
  666.  
  667. If I find the time (I got some ideas...) I will add some more utilities. If you
  668. like the RUTILS package, drop me an e-mail or a postcard from where U live (It
  669. would be nice to get some feedback - Thanks to those of you, who replied!).
  670.  
  671.         Ricki
  672.  
  673. $Id: readme.txt 1.20 1993/05/01 10:03:24 Ricki Exp $
  674.